package top.anydata.lifeofcode.lifesystem.service.app;

import org.springframework.data.domain.Pageable;
import org.springframework.data.geo.Point;
import top.anydata.lifeofcode.lifesystem.dto.app.AppUserDto;

import java.util.List;

/**
* 功能描述: 应用用户管理
* @author: <a href="mailto:caingao@anydata.top">CainGao</a>
* @date: 3:24 PM 2024/5/8
* @param:
* @return:
*/
public interface IAppUserService {

    /**
    * 功能描述: 用户注册
    * @param:
    * @return:
    */
    void register(AppUserDto appUserDto);

    /**
     * 用户地理位置相关
     */
    void location(Long userId, Point point);

    /**
     * 查找附近的人
     * @param point 用户位置
     * @return GeoResults
     */
    List<AppUserDto> findNearby(Point point, Pageable pageable);
}
